Linux上Docker 下的SQLServer+Django+Uvicorn+Nginx+Supervisor部署指南(正常人谁用sqlserver啊) |
您所在的位置:网站首页 › python 部署 › Linux上Docker 下的SQLServer+Django+Uvicorn+Nginx+Supervisor部署指南(正常人谁用sqlserver啊) |
系统:Centos 7 Docker下SQL Server安装安装Docker curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun拉取镜像 docker pull mcr.microsoft.com/mssql/server:2019-latest运行容器其中SA_PASSWORD设置为SA账户(SuperAdmin)的密码,默认登陆名为sa docker run --name sqlserver -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=2019@123' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest至此,安装结束。 Centos 下ODBC驱动的安装安装依赖 yum install unixODBC-devel freetds在python虚拟环境中安装依赖 pip install django-pyodbc django-mssql django-pytds django-sqlserver mssql-django six lxml openpyxl PyMySQL pyodbc配置freetds nano /etc/freetds.conf添加如下配置其中 Server 为Django连接数据库时的HOST [Server] host = 127.0.0.1 port = 1433 tds version = 8.0配置unixODBC nano /etc/odbcinst.ini添加如下配置其中SQL Server 为Django连接时的drive名 [SQL Server] Description = FreeTDS ODBC driver for MSSQL Driver = /usr/lib64/libtdsodbc.so Setup = /usr/lib64/libtdsS.so FileUsage = 1执行odbcinst -d -q 查看驱动列表有SQL Server则为配置成功 [PostgreSQL] [MySQL] [SQL Server] Django 数据库配置DATABASES = { "default": { "ENGINE": "mssql", "NAME": "数据库名", "HOST": "Server", # 为前文配置中freetds的配置名 "PORT": "1433", #端口 "USER": "用户名", "PASSWORD": "密码", "OPTIONS": { 'driver': 'SQL Server', # 为前文配置中unixODBC的配置名 }, } } supervisor uvicorn配置安装supervisior pip install supervisor uvicornsupervisior配置文件 [program:System] command=/project/sellsystem/bin/python3 -m uvicorn --proxy-headers --workers 4 [yourprojectname].asgi:application directory=/project/sellsystem/ autorestart=true startsecs=3 startretries=3 stdout_logfile=/www/server/panel/plugin/supervisor/log/sellSystem.out.log stderr_logfile=/www/server/panel/plugin/supervisor/log/sellSystem.err.log stdout_logfile_maxbytes=2MB stderr_logfile_maxbytes=2MB user=root priority=999 numprocs=1 process_name=%(program_name)s_%(process_num)02d保存后执行 supervisorctl update #一定要先更新 supervisorctl start System:* supervisorctl stop System:* supervisorctl restart System:*即可启动 nginx配置server { listen 80; server_name localhost charset UTF-8; access_log /home/log/test_nginx_access.log; error_log /home/log/test_nginx_error.log; client_max_body_size 75M; location / { proxy_pass http://127.0.0.1:8000; } } |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |